import Browser = Laya.Browser;
import {GameView} from "./game-view";
import {EffectView} from "./effect-view";
import { ui } from '../../../ui/layaMaxUI';
import d3UI =  ui.view.main.d3UI;
import { DataBase } from '../../../framework/manager/data/data-base';
import { UtilLoad3D } from '../../../framework/util/load3d';
import { Config3D } from '../../../framework/setting/config';
import { EventFunc } from '../../../framework/manager/event/event-data';


/**
 * @author Sun
 * @time 2019-08-11 12:03
 * @project SFramework_LayaAir
 * @description 3D场景层
 *
 */
export class D3View extends d3UI{

    /*****************************************页面属性管理*****************************************/

    /** Des:3D场景 */
    public scene3D:Laya.Scene3D;


    /********************************************——**********************************************/
    ////////////////////////////////////////////分界线////////////////////////////////////////////
    /*****************************************页面生命周期*****************************************/
    private static instance: D3View

    public static get $(): D3View {
        if (!this.instance) this.instance = new D3View();
        return this.instance;
    }




    constructor() {
        super();
    }

    onAwake(): void {
        super.onAwake();
        this.Init();
        this.suitInit();

    }


    /**
     * 初始化一次
     */
    public Init() {

        this.initOnce();

        // //数据监听
        // this.addDataWatch(DataDefine.UserInfo);
    }

    /**
     * 每次弹出初始化一次
     */
    popupInit() {
        this.initAll();
    }


    /**
     * 适配
     */
    suitInit()
    {
        this.width = Laya.stage.width;
        this.height = Laya.stage.height;
    }


    /********************************************——**********************************************/
    ////////////////////////////////////////////分界线////////////////////////////////////////////
    /*****************************************页面初始数据*****************************************/

    /** Des:构造是初始化一次 */
    private initOnce()
    {
        
    }

    /** Des:每次弹出初始化 */
    private initAll()
    {

    }



    /********************************************——**********************************************/
    ////////////////////////////////////////////分界线////////////////////////////////////////////
    /***************************************外部连接进入判断***************************************/

    /** Des:判断进入连接信息 */
    private initLink() {


    }

    /********************************************——**********************************************/
    ////////////////////////////////////////////分界线////////////////////////////////////////////
    /*****************************************页面事件相关*****************************************/



    /********************************************——**********************************************/
    ////////////////////////////////////////////分界线////////////////////////////////////////////
    /****************************************3D场景加载完成回调****************************************/

    /**
     * 加载3D场景
     */
    public load3DScene(area,callBack)
    {
        UtilLoad3D.loadScene(Config3D.$.scenePath,area,callBack);
    }

    /********************************************——**********************************************/
    ////////////////////////////////////////////分界线////////////////////////////////////////////
    /****************************************数据改变的监听****************************************/

    /**
     * 刷新数据
     */
    protected onData(data: DataBase) {
      
    }

    /********************************************——**********************************************/
    ///////////////////////////////////////////-分界线-///////////////////////////////////////////
}